# 定义非空字典
info = {
"name": "tom",
"age": 18,
"gender": "男",
"hobby": {"read": "小说", "sport": ["篮球", "足球"]}
}
# 查询年龄
# a1 = info["age"]
# print(a1)
print(info["age"])
# a2 = info.get("age")
# print(a2)
print(info.get("age"))
# 查询键aa的值
# print(info["aa"]) # 代码报错：KeyError: 'aa' 键aa不存在
print(info.get("aa")) # None 表示aa键不存在
# 思考：如何获取值："足球"
# a1 = info["hobby"]
# print(a1) # {'read': '小说', 'sport': ['篮球', '足球']}
# print(a1["sport"]) # ['篮球', '足球']
# print(a1["sport"][1])
# 组合:从外部一层一层获取递进
print(info["hobby"]["sport"][1])
print(info.get("hobby").get("sport")[1])
# 结论：
# 1.键存在，两个方法无区别，如果键不存在，get方法直接返回None，但是通过键直接查询会报错